/**
  ************************************* Copyright ******************************
  * FileName   : rtc.h
  * Version    : v1.0
  * Author     : yychao
  * Date       : 2023-06-13
  * Description:
  * Function List:
  	1. ....
  	   <version>:
  <modify staff>:
  		  <data>:
   <description>:
  	2. ...
  ******************************************************************************
 */

#ifndef __RTC_H_
#define __RTC_H_


#include <main.h>

#define USER_WRITE_BKP_DAT1_DATA   0xA5A5

typedef enum {
    RTC_CLK_SRC_TYPE_HSE128=0x01,
    RTC_CLK_SRC_TYPE_LSE=0x02,
    RTC_CLK_SRC_TYPE_LSI=0x03,
} RTC_CLK_SRC_TYPE;

extern RTC_DateType  RTC_DateStructure;
extern RTC_TimeType  RTC_TimeStructure;

void rtc_init(void);
void RTC_PrescalerConfig(void);
void RTC_CLKSourceConfig(RTC_CLK_SRC_TYPE Clk_Src_Type, bool Is_First_Cfg_RCC, bool Is_Rst_Bkp);
uint16_t MaxDate(uint16_t year, uint16_t month);


#endif


